Changes to allow "no input" windows (#64613):
authorMatthias Clasen <maclas@gmx.de>
Wed, 10 Dec 2003 23:58:23 +0000 (23:58 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Wed, 10 Dec 2003 23:58:23 +0000 (23:58 +0000)
commit5fb61f307553d9455240315f79923fbbf71bfeba
tree2cb5c7df896d7dc4de690c2d8a69a12526daeee3
parentc9c99b3f1b96cef1863503612e6c2689ae2ebbe6
Changes to allow "no input" windows (#64613):

Thu Dec 11 00:35:12 2003  Matthias Clasen  <maclas@gmx.de>

Changes to allow "no input" windows (#64613):

* gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
field accept_focus.

* gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
set it.

* gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
and gtk_window_get_focus() and gtk_window_set_focus().

* gdk/win32/gdkwindow-win32.c (gdk_window_new):
* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
* gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
Initialize the accept_focus field to TRUE.

* gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus):
* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus):
* gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus):
Implementations for the various backends. The Win32 and linux-fb
implementations set the accept_focus field, but don't use it yet
to actually implement noinput windows. The X implementation updates
the WM_HINTS to select the globally active input model (see the
ICCCM) if accept_focus is FALSE.

* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
WM_TAKE_FOCUS message if accept_focus is FALSE.
15 files changed:
ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
docs/reference/ChangeLog
docs/reference/gdk/gdk-sections.txt
docs/reference/gtk/gtk-sections.txt
gdk/gdkwindow.h
gdk/linux-fb/gdkwindow-fb.c
gdk/win32/gdkwindow-win32.c
gdk/x11/gdkevents-x11.c
gdk/x11/gdkwindow-x11.c
gtk/gtkwindow.c
gtk/gtkwindow.h